package org.shj.thread.book2.chapter08;

/**
 * Worker-Thread pattern 与第5章有点类似。但是不同的是，worker thread(可以认为是消费者)是隐藏在Channel中的，
 * 可以在Channel中动态控制worker thread的数量.
 * 此模式把请求与处理分开，有如下好处：
 * 1. 提高响应性。如果处理请求需要花较长时间，那么客户端请求完后，不需要等服务端处理完再返回
 * 2. 可增加额外的代码来实现可取消及可重复执行
 * @author huangjian
 *
 */
public class Main {

	public static void main(String[] args){
		Channel channel = new Channel(5);
		channel.startWorkers();
		
		new ClientThread("Alice", channel).start();
		new ClientThread("Bobby", channel).start();
		new ClientThread("Chris", channel).start();
	}
}
